The Internet is a world-wide network of interconnected computers. The Internet Protocol ("IP") is an addressing protocol designed to route traffic within a network or between networks. The Internet Protocol is used on many computer networks including the Internet, intranets and other networks. The Transmission Control Protocol ("TCP") and User Datagram Protocol ("UDP") arc often used with the Internet Protocol.
Transmission Control Protocol provides a connection-oriented, end-to-end reliable protocol designed to fit into a layered hierarchy of protocols that Support multi-network applications. User Datagram Protocol provides a transaction-oriented datagram protocol, where delivery and duplicate packet protection are not guaranteed.
Networks using the Internet Protocol such as the Internet, are often connected to a Public Switched Telephone Network ("PSTN") through a gateway. As is known in the art, a gateway connects computer networks using different networking protocols or operating at different transmission capacities. The public switched telephone network includes those provided by AT&T, Sprint, GTE, MCI and others. Gateways, also called "edge servers" are often used to provide enhanced telephony supplemental services from the public switched telephone network to a network using the Internet Protocol. For example, a gateway may provide adjunct call processing features, billing services, e-mail and other supplemental services between the public switched telephone network and an Internet Protocol network.
The supplemental services on the gateway allow a peer application associated with the public switched telephone network to communicate with a peer application on an Internet Protocol network. For example, a gateway allows an e-mail application associated with a network device on the public switched telephone network to communicate with a peer e-mail application associated with a network device on an Internet Protocol network (e.g., the Internet or an intranet).
Data packets sent between an Internet Protocol network and a public switched telephone network include packet headers that contain information such as source and destination network addresses, source and destination ports, and other information. When a first peer application on the Internet Protocol network sends data packets to a second peer application associated with the public switched telephone network, the gateway examines headers in the data packets and routes them to the second peer application associated with the public switched telephone network. Virtual tunnels are often used by gateways to deliver such data packets. Original data packets may be encapsulated into another data packet so they can be sent through a "virtual tunnel." As is known in the art, a virtual tunnel can be created by encapsulating one data packet inside another.
When supplemental services are added to a gateway, the supplemental services arc often added with custom software. Custom software on the gateway requires a considerable amount of development time, and is typically very expensive. The supplemental services also have to be integrated with existing services on the gateway without affecting the existing services. When supplemental services arc added to gateway, virtual tunnels are often used to add new or additional functionality.
However, there are several problems associated With using virtual tunnels to add new or additional functionality to a gateway or other network devices. Existing applications for supplemental services already in a gateway or other network devices may need to be modified to use the virtual tunnels. The modification of software to use new virtual tunnels is often a time consuming and expensive process and can affect existing services.
Another problem with adding new virtual tunnels is that a network device such as a telephony switch may be associated with several other network devices such as network signaling devices, gateways, etc. The telephony switch is typically connected to the associated devices with many different types of communications links with multiple communications channels. The associated network devices typically do not have the ability to communicate directly with each other, but need to use a communications link with multiple channels to/from the telephony switch. As a result, it is difficult to use a virtual tunnel for new supplemental services between the network devices associated with a communications link with multiple channels.
Thus, it is desirable to aid supplemental services to a gateway or other network device as quickly and as inexpensive as possible using virtual tunnels. The supplemental services should also be added to a gateway or other network device using virtual tunnels without affecting existing services, and useable on a network device over a communications link with multiple channels.